package com.tripwego.server.jdo;

import java.io.Serializable;
import java.util.Date;
import java.util.LinkedList;

import javax.jdo.annotations.IdGeneratorStrategy;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.PrimaryKey;

import com.google.appengine.api.datastore.Key;

@PersistenceCapable
public class TrajetJdo implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	@PrimaryKey
	@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
	private Key key;
	@Persistent
	private Long tripId;
	@Persistent
	private LinkedList<Long> listPositionId;
	@Persistent
	private String mode;

	@Persistent
	private Date dateCreation;
	@Persistent
	private Date dateModification;

	/**
	 * 
	 */
	public TrajetJdo() {
		super();
	}

	/**
	 * @return the key
	 */
	public Key getKey() {
		return key;
	}

	/**
	 * @param key
	 *            the key to set
	 */
	public void setKey(Key key) {
		this.key = key;
	}

	/**
	 * @return the dateCreation
	 */
	public Date getDateCreation() {
		return dateCreation;
	}

	/**
	 * @param dateCreation
	 *            the dateCreation to set
	 */
	public void setDateCreation(Date dateCreation) {
		this.dateCreation = dateCreation;
	}

	/**
	 * @return the dateModification
	 */
	public Date getDateModification() {
		return dateModification;
	}

	/**
	 * @param dateModification
	 *            the dateModification to set
	 */
	public void setDateModification(Date dateModification) {
		this.dateModification = dateModification;
	}

	/**
	 * @return the mode
	 */
	public String getMode() {
		return mode;
	}

	/**
	 * @param mode
	 *            the mode to set
	 */
	public void setMode(String mode) {
		this.mode = mode;
	}

	/**
	 * @return the listPositionId
	 */
	public LinkedList<Long> getListPositionId() {
		return listPositionId;
	}

	/**
	 * @param listPositionId
	 *            the listPositionId to set
	 */
	public void setListPositionId(LinkedList<Long> listPositionId) {
		this.listPositionId = listPositionId;
	}

	/**
	 * @return the tripId
	 */
	public Long getTripId() {
		return tripId;
	}

	/**
	 * @param tripId
	 *            the tripId to set
	 */
	public void setTripId(Long tripId) {
		this.tripId = tripId;
	}

}
